<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <!-- 
        1.onclick 这种方式绑定的事件 是 直接把onclick=null 移除事件
        2.addEventListener('click',funcyion(){})  移除用removeEventListener('click')
        3.但是 移除监听事件 需要用  回调函数  或  普通函数  给监听绑定 
          如：事件源.addEventListener('click',回调函数/普通函数)
          然后再用   事件源.removeEventListener('click',回调函数/普通函数)


          btn.attachEvent  //事件添加  主要针对于IE 6-8
          btn.detachEvent  //事件移除   主要针对于IE 6-8
     -->
     
     <button id="btn1">按钮1</button>
     <button id="btn2">按钮2</button>
     <button id="btn3">按钮3</button>
     <script>
         var btn1=document.getElementById("btn1")
         var btn2=document.getElementById("btn2")
            btn1.onclick=function()
            {
                alert("按钮1被点击了")
            }
            var btn2fun=function()  //匿名函数
            {
                alert("按钮2被点击了")
            }
            function btn2fun2()   //普通函数
            {
                alert("按钮2第二次被点击了")
            }
            btn2.addEventListener('click',btn2fun)  //给匿名函数一个点击的监听事件
            btn2.addEventListener('click',btn2fun2)  //给普通函数一个点击的监听事件
            btn3.addEventListener('click',function(){
                btn1.onclick=null;  //解除btn1的on绑定事件
                btn2.removeEventListener('click',btn2fun)  //解除匿名函数的监听事件
                btn2.removeEventListener('click',btn2fun2)  //解除普通函数的监听事件
            })
     </script>
</body>
</html>